<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Kinetis Bootloader Host: elftosb::EncoreBootImage::Section Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="nxp_logo_small.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Kinetis Bootloader Host
   &#160;<span id="projectnumber">2.0.0</span>
   </div>
   <div id="projectbrief">Host Tools for Kinetis devices</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Introduction</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classelftosb_1_1_encore_boot_image_1_1_section.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="classelftosb_1_1_encore_boot_image_1_1_section-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">elftosb::EncoreBootImage::Section Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>Base class for a section of an Encore boot image.  
 <a href="classelftosb_1_1_encore_boot_image_1_1_section.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_encore_boot_image_8h_source.html">EncoreBootImage.h</a>&gt;</code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for elftosb::EncoreBootImage::Section:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" frameborder="0" src="classelftosb_1_1_encore_boot_image_1_1_section__inherit__graph.svg" width="376" height="231"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-1-trigger" src="closed.png" alt="+"/> Collaboration diagram for elftosb::EncoreBootImage::Section:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" frameborder="0" src="classelftosb_1_1_encore_boot_image_1_1_section__coll__graph.svg" width="1076" height="292"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a53165656e3f869597464f208cc50cc17"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a53165656e3f869597464f208cc50cc17"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a53165656e3f869597464f208cc50cc17">Section</a> ()</td></tr>
<tr class="memdesc:a53165656e3f869597464f208cc50cc17"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor. <br /></td></tr>
<tr class="separator:a53165656e3f869597464f208cc50cc17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa70f133d779723452c8cc6108e545f54"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa70f133d779723452c8cc6108e545f54"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#aa70f133d779723452c8cc6108e545f54">Section</a> (uint32_t identifier)</td></tr>
<tr class="memdesc:aa70f133d779723452c8cc6108e545f54"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor taking the unique identifier for this section. <br /></td></tr>
<tr class="separator:aa70f133d779723452c8cc6108e545f54"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Identifier</div></td></tr>
<tr class="memitem:ad73e3c7e76556294772e26f5621d83a8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad73e3c7e76556294772e26f5621d83a8"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setIdentifier</b> (uint32_t identifier)</td></tr>
<tr class="separator:ad73e3c7e76556294772e26f5621d83a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1149f741f265fc6e80655a22d81602f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad1149f741f265fc6e80655a22d81602f"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><b>getIdentifier</b> () const </td></tr>
<tr class="separator:ad1149f741f265fc6e80655a22d81602f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Header</div></td></tr>
<tr class="memitem:a42be0ce0fddc52a64f38ead8a7e4f566"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a42be0ce0fddc52a64f38ead8a7e4f566"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a42be0ce0fddc52a64f38ead8a7e4f566">setFlags</a> (uint32_t flags)</td></tr>
<tr class="memdesc:a42be0ce0fddc52a64f38ead8a7e4f566"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets explicit flags for this section. <br /></td></tr>
<tr class="separator:a42be0ce0fddc52a64f38ead8a7e4f566"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9b71263e0f3d3ad8d4c936036e2f640"><td class="memItemLeft" align="right" valign="top">virtual uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#ab9b71263e0f3d3ad8d4c936036e2f640">getFlags</a> () const </td></tr>
<tr class="memdesc:ab9b71263e0f3d3ad8d4c936036e2f640"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the flags for this section.  <a href="#ab9b71263e0f3d3ad8d4c936036e2f640">More...</a><br /></td></tr>
<tr class="separator:ab9b71263e0f3d3ad8d4c936036e2f640"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0fc6f66cf681bb44c7ae067fc3217ef5"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a0fc6f66cf681bb44c7ae067fc3217ef5">fillSectionHeader</a> (<a class="el" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1section__header__t">section_header_t</a> &amp;header)</td></tr>
<tr class="memdesc:a0fc6f66cf681bb44c7ae067fc3217ef5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pure virtual method to construct the header for this section.  <a href="#a0fc6f66cf681bb44c7ae067fc3217ef5">More...</a><br /></td></tr>
<tr class="separator:a0fc6f66cf681bb44c7ae067fc3217ef5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Owner image</div></td></tr>
<tr class="memitem:a1182c981948cd38b76e9c5a3a33f492c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1182c981948cd38b76e9c5a3a33f492c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a1182c981948cd38b76e9c5a3a33f492c">setImage</a> (<a class="el" href="classelftosb_1_1_encore_boot_image.html">EncoreBootImage</a> *image)</td></tr>
<tr class="memdesc:a1182c981948cd38b76e9c5a3a33f492c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when the section is added to an image. <br /></td></tr>
<tr class="separator:a1182c981948cd38b76e9c5a3a33f492c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c7650c56b957ed7d8ab60d937679cb3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7c7650c56b957ed7d8ab60d937679cb3"></a>
<a class="el" href="classelftosb_1_1_encore_boot_image.html">EncoreBootImage</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a7c7650c56b957ed7d8ab60d937679cb3">getImage</a> () const </td></tr>
<tr class="memdesc:a7c7650c56b957ed7d8ab60d937679cb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns a pointer to the image that this section belongs to. <br /></td></tr>
<tr class="separator:a7c7650c56b957ed7d8ab60d937679cb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Alignment</div></td></tr>
<tr class="memitem:a13ccc2d1ba9564de90696a7b33af83d1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a13ccc2d1ba9564de90696a7b33af83d1">setAlignment</a> (unsigned alignment)</td></tr>
<tr class="memdesc:a13ccc2d1ba9564de90696a7b33af83d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the required alignment in the output file for this section.  <a href="#a13ccc2d1ba9564de90696a7b33af83d1">More...</a><br /></td></tr>
<tr class="separator:a13ccc2d1ba9564de90696a7b33af83d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a22fa0c520faf05a221c26374ada7bf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a22fa0c520faf05a221c26374ada7bf"></a>
unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a4a22fa0c520faf05a221c26374ada7bf">getAlignment</a> () const </td></tr>
<tr class="memdesc:a4a22fa0c520faf05a221c26374ada7bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current alignment, the minimum of which will be 16. <br /></td></tr>
<tr class="separator:a4a22fa0c520faf05a221c26374ada7bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ae0b13328a81ef019dfa43fc3dd647e"><td class="memItemLeft" align="right" valign="top">unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a6ae0b13328a81ef019dfa43fc3dd647e">getPadBlockCountForOffset</a> (unsigned offset)</td></tr>
<tr class="memdesc:a6ae0b13328a81ef019dfa43fc3dd647e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes padding amount for alignment requirement.  <a href="#a6ae0b13328a81ef019dfa43fc3dd647e">More...</a><br /></td></tr>
<tr class="separator:a6ae0b13328a81ef019dfa43fc3dd647e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Leave unencrypted flag</div></td></tr>
<tr class="memitem:ae3a7b7bb9916e927d0500493cdda312d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae3a7b7bb9916e927d0500493cdda312d"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#ae3a7b7bb9916e927d0500493cdda312d">setLeaveUnencrypted</a> (unsigned flag)</td></tr>
<tr class="memdesc:ae3a7b7bb9916e927d0500493cdda312d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets whether the section will be left unencrypted. <br /></td></tr>
<tr class="separator:ae3a7b7bb9916e927d0500493cdda312d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad66237e9ffe5fe72ba289394621739f2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad66237e9ffe5fe72ba289394621739f2"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#ad66237e9ffe5fe72ba289394621739f2">getLeaveUnencrypted</a> () const </td></tr>
<tr class="memdesc:ad66237e9ffe5fe72ba289394621739f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns true if the section will remain unencrypted. <br /></td></tr>
<tr class="separator:ad66237e9ffe5fe72ba289394621739f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html">elftosb::EncoreBootImage::CipherBlockGenerator</a></td></tr>
<tr class="memitem:a80773110e06a465fa8c9184ccf51c06d inherit pub_methods_classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80773110e06a465fa8c9184ccf51c06d"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html#a80773110e06a465fa8c9184ccf51c06d">debugPrint</a> () const </td></tr>
<tr class="memdesc:a80773110e06a465fa8c9184ccf51c06d inherit pub_methods_classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Print out a string representation of the object. <br /></td></tr>
<tr class="separator:a80773110e06a465fa8c9184ccf51c06d inherit pub_methods_classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14925c15a37596d24592165d16b58d3d inherit pub_methods_classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator"><td class="memItemLeft" align="right" valign="top">virtual unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html#a14925c15a37596d24592165d16b58d3d">getBlockCount</a> () const </td></tr>
<tr class="memdesc:a14925c15a37596d24592165d16b58d3d inherit pub_methods_classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the total number of cipher blocks.  <a href="#a14925c15a37596d24592165d16b58d3d">More...</a><br /></td></tr>
<tr class="separator:a14925c15a37596d24592165d16b58d3d inherit pub_methods_classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a0b3fc7d51d41d38b0c30da233b4fa4 inherit pub_methods_classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator"><td class="memItemLeft" align="right" valign="top">virtual unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html#a7a0b3fc7d51d41d38b0c30da233b4fa4">getBlocks</a> (unsigned offset, unsigned maxCount, cipher_block_t *data)</td></tr>
<tr class="memdesc:a7a0b3fc7d51d41d38b0c30da233b4fa4 inherit pub_methods_classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the contents of up to <em>maxCount</em> cipher blocks.  <a href="#a7a0b3fc7d51d41d38b0c30da233b4fa4">More...</a><br /></td></tr>
<tr class="separator:a7a0b3fc7d51d41d38b0c30da233b4fa4 inherit pub_methods_classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a93afd619fa43846f62dacd395fbd264b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a93afd619fa43846f62dacd395fbd264b"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a93afd619fa43846f62dacd395fbd264b">m_identifier</a></td></tr>
<tr class="memdesc:a93afd619fa43846f62dacd395fbd264b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unique identifier for this section. <br /></td></tr>
<tr class="separator:a93afd619fa43846f62dacd395fbd264b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad80e8e1970fc1a08f7e92004a13afedf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad80e8e1970fc1a08f7e92004a13afedf"></a>
<a class="el" href="classelftosb_1_1_encore_boot_image.html">EncoreBootImage</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#ad80e8e1970fc1a08f7e92004a13afedf">m_image</a></td></tr>
<tr class="memdesc:ad80e8e1970fc1a08f7e92004a13afedf"><td class="mdescLeft">&#160;</td><td class="mdescRight">The image to which this section belongs. <br /></td></tr>
<tr class="separator:ad80e8e1970fc1a08f7e92004a13afedf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd1fb40e9ee26fd3b311f16af1426cf7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd1fb40e9ee26fd3b311f16af1426cf7"></a>
unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#acd1fb40e9ee26fd3b311f16af1426cf7">m_alignment</a></td></tr>
<tr class="memdesc:acd1fb40e9ee26fd3b311f16af1426cf7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Alignment requirement for the start of this section. <br /></td></tr>
<tr class="separator:acd1fb40e9ee26fd3b311f16af1426cf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d79f9d31b43b2cc532f9b3e756c5ce0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d79f9d31b43b2cc532f9b3e756c5ce0"></a>
uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a5d79f9d31b43b2cc532f9b3e756c5ce0">m_flags</a></td></tr>
<tr class="memdesc:a5d79f9d31b43b2cc532f9b3e756c5ce0"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html" title="Base class for a section of an Encore boot image. ">Section</a> flags set by the user. <br /></td></tr>
<tr class="separator:a5d79f9d31b43b2cc532f9b3e756c5ce0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a26b41c16bb8b01bb7b815107e9c91290"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a26b41c16bb8b01bb7b815107e9c91290"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a26b41c16bb8b01bb7b815107e9c91290">m_leaveUnencrypted</a></td></tr>
<tr class="memdesc:a26b41c16bb8b01bb7b815107e9c91290"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set to true to prevent this section from being encrypted. <br /></td></tr>
<tr class="separator:a26b41c16bb8b01bb7b815107e9c91290"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Base class for a section of an Encore boot image. </p>
<p>Provides methods to manage the unique identifier that all sections have, and to set the boot image object which owns the section. There are also virtual methods to get header flags and fill in the header used in the section table. Subclasses must implement at least <a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a0fc6f66cf681bb44c7ae067fc3217ef5" title="Pure virtual method to construct the header for this section. ">fillSectionHeader()</a>. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a0fc6f66cf681bb44c7ae067fc3217ef5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void EncoreBootImage::Section::fillSectionHeader </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1section__header__t">section_header_t</a> &amp;&#160;</td>
          <td class="paramname"><em>header</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Pure virtual method to construct the header for this section. </p>
<p>Only if the section has been assigned a boot image owner object will this method be able to fill in the #section_header_t::m_offset field. If no boot image has been set the offset will be set to 0. </p>

</div>
</div>
<a class="anchor" id="ab9b71263e0f3d3ad8d4c936036e2f640"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual uint32_t elftosb::EncoreBootImage::Section::getFlags </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns the flags for this section. </p>
<p>The return value consists of the flags set with <a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a42be0ce0fddc52a64f38ead8a7e4f566" title="Sets explicit flags for this section. ">setFlags()</a> possibly or-ed with <a class="el" href="classelftosb_1_1_encore_boot_image.html#ab26b61b6441c5467c6d4cddb1ff76690a576b9de05acd56d12c6171b0ad67353f" title="The section is unencrypted. Applies only if the rest of the boot image is encrypted. ">ROM_SECTION_CLEARTEXT</a> if the section has been set to be left unencrypted. </p>

<p>Reimplemented in <a class="el" href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#ac07082a02f1af27d83e0dd739f1e603b">elftosb::EncoreBootImage::BootSection</a>.</p>

</div>
</div>
<a class="anchor" id="a6ae0b13328a81ef019dfa43fc3dd647e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">unsigned EncoreBootImage::Section::getPadBlockCountForOffset </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>offset</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Computes padding amount for alignment requirement. </p>
<p>This method calculates the number of padding blocks that need to be inserted from a given offset for the section to be properly aligned. The value returned is the number of padding blocks that should be inserted starting just after <em>offset</em> to align the first cipher block of the section contents. The section's boot tag is  not taken into account by this method, so the caller must deal with that herself.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">offset</td><td>Start offset in cipher blocks (not bytes).</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A number of cipher blocks of padding to insert. </dd></dl>

</div>
</div>
<a class="anchor" id="a13ccc2d1ba9564de90696a7b33af83d1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void EncoreBootImage::Section::setAlignment </td>
          <td>(</td>
          <td class="paramtype">unsigned&#160;</td>
          <td class="paramname"><em>alignment</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the required alignment in the output file for this section. </p>
<p>The alignment will never be less than 16, since that is the size of the cipher block which is the basic unit of the boot image format. If an alignment less than 16 is set it will be ignored.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">alignment</td><td>Alignment in bytes for this section. Must be a power of two. Ignored if less than 16. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="_encore_boot_image_8h_source.html">EncoreBootImage.h</a></li>
<li>EncoreBootImage.cpp</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><b>elftosb</b></li><li class="navelem"><a class="el" href="classelftosb_1_1_encore_boot_image.html">EncoreBootImage</a></li><li class="navelem"><a class="el" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a></li>
    <li class="footer">Generated on Mon Mar 7 2016 16:49:52 for Kinetis Bootloader Host by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>
